#include <bits/stdc++.h>
using namespace std;
const int N=55;
char s[N];
char t[N];
int n;
stack<int> cnt[30];
int a[N];
int main(void){
    scanf("%d",&n);
    scanf("%s",s);
    scanf("%s",t);
    for(int i=0;i<n;i++){
        cnt[t[i]-'a'].push(i+1);
    }
    for(int i=0;i<n;i++){
        if(cnt[s[i]-'a'].empty()){
            printf("-1\n");
            return 0;
        }
        a[i]=cnt[s[i]-'a'].top();
        cnt[s[i]-'a'].pop();
    }
    int ans=0;
    vector<int> res;
    for(int i=0;i<n-1;i++){
        for(int j=0;j<n-1-i;j++){
            if(a[j]>a[j+1]){
                swap(a[j],a[j+1]);
                res.push_back(j+1);
            }
        }
    }
    int l=res.size();
    printf("%d\n",l);
    for(int i=0;i<l-1;i++){
        printf("%d ",res[i]);
    }
    if(l>0){
        printf("%d\n",res[l-1]);
    }
    return 0;
}
